home *** CD-ROM | disk | FTP | other *** search
/ Software Vault: The Diamond Collection / The Diamond Collection (Software Vault)(Digital Impact).ISO / cdr47 / sptdemo.zip / CONTA.PRG < prev    next >
Text File  |  1995-02-28  |  4KB  |  123 lines

  1. // ----------------------------------------------------------------------------
  2. // (c) 1,994 Juan Miguel Sosso Prieto - Todos los derechos reservados
  3. // Autor...: Juan Miguel Sosso
  4. // Proyecto: Contabilidad Personal
  5. // Módulo..: Principal
  6. // Fecha...: Mon  16-05-94
  7. // Hora....: 11:50:17
  8.  
  9. // Inicio: 04-Feb-1,993
  10.  
  11. #include "inkey.ch"
  12. #include "sptools.ch"
  13.  
  14. // ----------------------------------------------------------------------------
  15.  
  16. proc Main()
  17.  
  18.    local aConfig := { { "nINGRESO", "N", 7, 0 }, ;
  19.                       { "nGASTO",   "N", 7, 0 } }
  20.  
  21.    INIT SYSTEM COLOR "W+/N*" ;
  22.                CLOCK ;
  23.                CALCULATOR KEY K_F2 ;
  24.                CALENDAR KEY K_F3 ;
  25.                SAVE DOS SCREEN ;
  26.                SCREEN BLANK ;
  27.                MESSAGE "Contabilidad Personal" ;
  28.                MINUTES 3 ;
  29.                ADD TO CONFIG aConfig
  30.  
  31.  
  32.    DEFINE DATABASE "apuntes.dat" ALIAS Apunte
  33.       FIELD DFECHA     TYPE Date
  34.       FIELD NGRUPO     TYPE Num  LEN  2
  35.       FIELD CDESC      TYPE Char LEN 30
  36.       FIELD NINGRESO   TYPE Num  LEN  7
  37.       FIELD NGASTO     TYPE Num  LEN  7
  38.  
  39.       INDEX Apunte->dFECHA TAG Fecha
  40.       INDEX Str( Apunte->nGRUPO ) + DToS( Apunte->dFECHA ) TAG Grupo
  41.    END DATABASE
  42.  
  43.    DEFINE DATABASE "grupos.dat" ALIAS Grupo
  44.       FIELD NGRUPO     TYPE Num  LEN  2
  45.       FIELD CDESC      TYPE Char LEN 30
  46.       FIELD NINGRESO   TYPE Num  LEN  7
  47.       FIELD NGASTO     TYPE Num  LEN  7
  48.  
  49.       INDEX Grupo->nGRUPO TAG Grupo
  50.    END DATABASE
  51.  
  52.  
  53.    OPEN DATABASES
  54.    ACTIVATE MENU oMnuMain()
  55.  
  56.    CLOSE SYSTEM
  57.  
  58. return
  59.  
  60. // ----------------------------------------------------------------------------
  61.  
  62. function oMnuMain()
  63.  
  64.    local oMenu
  65.  
  66.    MENU oMenu
  67.       MENUITEM " &Mantenimiento "
  68.       MENU
  69.          MENUITEM " &Apuntes " ACTION ManApuntes() ;
  70.                                MESSAGE "Mantenimiento de apuntes contables"
  71.          MENUITEM " &Grupos "  ACTION Grupos() ;
  72.                                MESSAGE "Mantenimiento de grupos contables"
  73.          SEPARATOR
  74.          MENUITEM " &Terminar  Alt-X " ACTION oMenu:lEnd := .t. ;
  75.                                        SHORTCUT K_ALT_X ;
  76.                                        MESSAGE "Termina la ejecución del programa"
  77.       ENDMENU
  78.       MENUITEM " &Estadísticas "
  79.       MENU
  80.          MENUITEM " &Media "        ACTION MedPorMes() ;
  81.                                     MESSAGE "Media de ingresos y gastos por mes"
  82.          MENUITEM " &Por grupo "    MESSAGE "Estadística por grupo" ;
  83.                                     ACTION Estadisticas()
  84.       ENDMENU
  85.       MENUITEM " &Utilidades "
  86.       MENU
  87.          MENUITEM " Calculadora     F&2 " ACTION Calculator() ;
  88.             MESSAGE "Calculadora"
  89.          MENUITEM " Calendario      F&3 " ACTION Calendar() ;
  90.             MESSAGE "Calendario con anotaciones"
  91.          SEPARATOR
  92.          MENUITEM " &Reorganizar " ACTION Reorganizar() ;
  93.                                    MESSAGE "Reorganiza las bases de datos y los saldos"
  94.          MENUITEM " &Configuración "      MESSAGE "Configuración del sistema"
  95.          MENU
  96.             MENUITEM " &General... "      ACTION MainConfig( oMenu ) ;
  97.                                           MESSAGE "Configuración general del sistema"
  98.             MENUITEM " &Colores... "      ACTION ClrConfig( oMenu ) ;
  99.                                           MESSAGE "Configuración de los colores de la pantalla"
  100.             MENUITEM " &Impresora... "    ACTION PrnConfig() ;
  101.                                           MESSAGE "Configuración de la impresora"
  102.          ENDMENU
  103.          SEPARATOR
  104.          MENUITEM " &Acerca de... " ACTION AcercaDe() ;
  105.             MESSAGE "Acerca de este programa"
  106.       ENDMENU
  107.    ENDMENU
  108.  
  109. return oMenu
  110.  
  111. // ----------------------------------------------------------------------------
  112.  
  113. static proc AcercaDe()
  114.  
  115.    nMsgBox( "Contabilidad Personal;" + ;
  116.             cCopyRight() + " 1992-93-94 Juan Miguel Sosso;;" + ;
  117.             "Este programa ha sido concedido bajo licencia a:;;" + ;
  118.             SubStr( BliSerNum(), 5 ),,, "ACERCA DEL PROGRAMA" )
  119.  
  120. return
  121.  
  122. // ----------------------------------------------------------------------------
  123.